package com.liujit.standard.basis.core.util;

import cn.hutool.core.util.StrUtil;

/**
 * @description: 字符串处理工具类
 * @author: liujun
 * @create: 2020/12/31 4:45 下午
 **/
public class StringExt extends StrUtil {

    /**
     * 格式化字符串(替换符自己指定)
     *
     * @param format
     * @param replaceOperator
     * @param args
     * @return
     */
    public static String formatIfArgs(String format, String replaceOperator, Object... args) {
        if (isEmpty(format) || isEmpty(replaceOperator)) {
            return format;
        }

        format = replace(format, replaceOperator, "%s");
        return formatIfArgs(format, args);
    }

    /**
     * 格式化字符串（替换符为%s）
     *
     * @param format
     * @param args
     * @return
     */
    public static String formatIfArgs(String format, Object... args) {
        if (isEmpty(format)) {
            return format;
        }

        return (args == null || args.length == 0) ? String.format(format.replaceAll("%([^n])", "%%$1")) : String.format(format, args);
    }
}
